Repository navigation
feat(acp): add generic ACP agent type with launch confirmation - #1225
Closed
wpfleger96 wants to merge 8 commits into
Closed
wpfleger96 wants to merge 8 commits into
wpfleger96 wants to merge 8 commits into
Conversation
added 2 commits
October 15, 2026 16:56
Owners will add long-tail ACP harnesses by preset or typed command; the launch must be owner-confirmed, so approval is a digest over the exact argv, env and workspace that launch re-checks. Signed-off-by: Hayt <211b96e6a2b7f45fd4047988976c7bbbeeda0c15f3ae7b32eec20834b5a55118@buzz.block.builderlab.xyz>
Owners confirm the exact argv, workspace and env names before an ACP agent can launch; Check runs only while that confirmation is current. The type registers disabled by default until its runtime lands, and carries only instructions across type changes. Signed-off-by: Hayt <211b96e6a2b7f45fd4047988976c7bbbeeda0c15f3ae7b32eec20834b5a55118@buzz.block.builderlab.xyz>
added 6 commits
October 15, 2026 17:09
Signed-off-by: Hayt <211b96e6a2b7f45fd4047988976c7bbbeeda0c15f3ae7b32eec20834b5a55118@buzz.block.builderlab.xyz>
Desktop reads the native catalog, so without it the plugin could not be enabled. Signed-off-by: Hayt <211b96e6a2b7f45fd4047988976c7bbbeeda0c15f3ae7b32eec20834b5a55118@buzz.block.builderlab.xyz>
The edited config restored the saved approval on every render, so switching away from a confirmed preset and back left Check enabled. Signed-off-by: Hayt <211b96e6a2b7f45fd4047988976c7bbbeeda0c15f3ae7b32eec20834b5a55118@buzz.block.builderlab.xyz>
Match the native host's absolute-or-~/ rule, and refuse empty or multi-line args so a stored argv always round-trips through the one-per-line editor. Signed-off-by: Hayt <211b96e6a2b7f45fd4047988976c7bbbeeda0c15f3ae7b32eec20834b5a55118@buzz.block.builderlab.xyz>
Joining then splitting stored args turned ["a\nb"] into two args and [""] into none, so Save could quietly store a different argv. The untouched argv now reaches validation as-is and blocks Save. Signed-off-by: Hayt <211b96e6a2b7f45fd4047988976c7bbbeeda0c15f3ae7b32eec20834b5a55118@buzz.block.builderlab.xyz>
Registering buzz.acp natively made it a bundled plugin that starts disabled, which the defaults test didn't allow for. Signed-off-by: Hayt <211b96e6a2b7f45fd4047988976c7bbbeeda0c15f3ae7b32eec20834b5a55118@buzz.block.builderlab.xyz>
Member
Author
|
🤖 Folded into #1251, which carries these commits unchanged plus the runtime. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🤖 Adds
buzz.acp, an agent type for long-tail harnesses that speak the Agent Client Protocol (Cursor, OpenCode, Amp, Gemini CLI, Devin, Grok Build, Kimi Code, Oh My Pi). An owner picks a preset or types a command, args and env; no per-harness JS plugin. This PR has the settings and the launch confirmation; the runtime that starts the harness comes next on the shared ACP client (#1227).presets.ts: eight presets as data, all marked unverified.config.ts: per-agent config, validation (non-empty command not starting with-or containing=, no NUL, valid env names,BUZZ_*/NOSTR_*rejected), a SHA-256 approval over["buzz.acp/approval/1", command, args, sortedEnv, workspace], andlaunch(), which validates and digests one snapshot.carrypasses on only instructions;adopttakes instructions and leaves approval empty.tabs.tsx: settings tab with preset/command/args/env/workspace/instructions, a confirmation dialog showing the exact argv, workspace, env names andPATHonly, a Check button enabled only while the approval is current, and a History tab saying history isn't available.src/bundled/index.tswithenabledByDefault: falseuntil the runtime lands.